package cn.com.blueInfo.HaiYuan.business.supplier.mapper;

import cn.com.blueInfo.HaiYuan.business.supplier.entity.SupplierBase;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 供应商基本信息表
 * @ClassName: SupplierBaseMapper
 * @tableName: tj_hai_supplier_base
 * @author suxch
 * @date 2019年4月23日  下午8:38:16
 */
@Mapper
public interface SupplierBaseMapper extends BaseMapper<SupplierBase> {

    /**
     * 批量新增供应商基本信息
     * @Title: batchAddSupplierBaseInfo
     * @param supplierBaseList
     * @return int
     * @throws
     */
    int batchAddSupplierBaseInfo(List<SupplierBase> supplierBaseList);

    /**
     * 新增供应商基本信息
     * @Title: addSupplierBaseInfo
     * @param supplierBase
     * @return int
     * @throws
     */
    int addSupplierBaseInfo(SupplierBase supplierBase);

    /**
     * 批量删除供应商基本信息
     * @Title: batchDelSupplierBaseInfoByUnids
     * @param supplierBaseUnids
     * @return int
     * @throws
     */
    int batchDelSupplierBaseInfoByUnids(ArrayList<String> supplierBaseUnids);

    /**
     * 删除供应商基本信息
     * @Title: delSupplierBaseInfoByUnid
     * @param unid
     * @return int
     * @throws
     */
    int delSupplierBaseInfoByUnid(String unid);

    /**
     * 批量更新供应商基本信息
     * @Title: batchUpdateSupplierBaseInfoByUnid
     * @param supplierBaseList
     * @return int
     * @throws
     */
    int batchUpdateSupplierBaseInfoByUnid(List<SupplierBase> supplierBaseList);

    /**
     * 更新供应商基本信息
     * @Title: updateSupplierBaseInfoByUnid
     * @param supplierBase
     * @return int
     * @throws
     */
    int updateSupplierBaseInfoByUnid(SupplierBase supplierBase);

    /**
     * 分页查询供应商基本信息
     * @Title: querySupplierBaseInfo
     * @param paramMap
     * @return List<SupplierBase>
     * @throws
     */
    List<SupplierBase> querySupplierBaseInfo(Map<String, Object> paramMap);

    /**
     * 查询供应商基本信息
     * @Title: querySupplierBaseInfo
     * @return List<SupplierBase>
     * @throws
     */
    List<SupplierBase> querySupplierBaseInfo();

    /**
     * 条件查询供应商基本信息数量
     * @Title: querySupplierBaseInfoCount
     * @param paramMap
     * @return Integer
     * @throws
     */
    Integer querySupplierBaseInfoCount(Map<String, Object> paramMap);

    /**
     * 查询供应商基本信息数量
     * @Title: querySupplierBaseInfoCount
     * @return Integer
     * @throws
     */
    Integer querySupplierBaseInfoCount();

    /**
     * 查询供应商基本最大排序编号
     * @Title: queryMaxOrderNumber
     * @return Integer
     * @throws
     */
    Integer queryMaxOrderNumber();

}
